home *** CD-ROM | disk | FTP | other *** search
/ The 640 MEG Shareware Studio 2 / The 640 Meg Shareware Studio CD-ROM Volume II (Data Express)(1993).ISO / basic / pqmenu.zip / PULLDOWN.BAS < prev    next >
BASIC Source File  |  1992-02-22  |  17KB  |  465 lines

  1.  
  2.   DEFINT A-Z
  3. '$INCLUDE: 'pqmenu.bi'
  4. '$DYNAMIC
  5.   DIM SHARED mouse
  6.   
  7.  CALL MMCHECK(mouse)
  8.   COLOR 7, 1
  9.   CLS
  10.   
  11.  
  12.   MenuColor = 7
  13.   frame = 1
  14.   framecolor = 4
  15.   TEXTCOLOR = 0
  16.   HotKeyColor = 15
  17.   BarColor = 4
  18.   Inactive = 8
  19.   
  20.   REDIM PullDown(4) AS MenuItems
  21.  
  22.   PullDown(1).titles = "FILE"
  23.   PullDown(1).items = "OPEN/SAVE/MERGE/CREATE"
  24.   PullDown(1).HotKey = "1F/1O1/1S1/1M1/1C0"
  25.   PullDown(1).position = 4
  26.  
  27.   PullDown(2).titles = "EDIT"
  28.   PullDown(2).items = "CUT/COPY/PASTE/CLEAR"
  29.   PullDown(2).HotKey = "1E/1C1/2O1/1P1/2L1"
  30.   PullDown(2).position = 10
  31.   
  32.   PullDown(3).titles = "OPTIONS"
  33.   PullDown(3).items = "DISPLAY/Right Mouse/Screens"
  34.   PullDown(3).HotKey = "1O/1D1/7M1/1S1"
  35.   PullDown(3).position = 16
  36.   
  37.   PullDown(4).titles = "HELP"
  38.   PullDown(4).items = "Main/Get Mouse/Screens"
  39.   PullDown(4).HotKey = "1H/1M1/1G0/1S1"
  40.   PullDown(4).position = 60
  41.   
  42.   
  43.   CALL MENU(PullDown(), MenuColor, frame, framecolor, TEXTCOLOR, HotKeyColor, BarColor, Inactive, choice$, click%)
  44.   DO
  45.   CALL MMCURSORON
  46.    CALL GetKey4(mouse, asccode, scancode, click, rgt, alt)
  47.       IF alt = -1 THEN click = alt
  48.   CALL MENU(PullDown(), MenuColor, frame, framecolor, TEXTCOLOR, HotKeyColor, BarColor, Inactive, choice$, click%)
  49.  
  50.   CALL MMCURSORON
  51.  LOOP
  52.  
  53.  
  54. END
  55.  
  56. ' '$INCLUDE: 'pqmenu.bi'
  57.  
  58. REM $STATIC
  59. FUNCTION largest (picks$(), count)
  60.     
  61.     bb = 0
  62.     FOR i = 1 TO count
  63.       IF LEN(picks$(i)) > bb THEN bb = LEN(picks$(i))
  64.     NEXT i
  65.     largest = bb
  66.     
  67.     
  68.     
  69.     
  70.   END FUNCTION
  71.  
  72. SUB MENU (PullDown() AS MenuItems, MenuColor, frame, framecolor, TEXTCOLOR, HotKeyColor, BarColor, Inactive, choice$, click)
  73. LOCATE 1, 1, 0
  74. choice$ = ""
  75. '............SET COLORS AND DIMENTION ARRAYS............................
  76.     CALL CALCATTR(MenuItems, MenuColor, mencol)
  77.     CALL CALCATTR(MenuItems, BarColor, bar)
  78.     CALL CALCATTR(HotKeyColor, MenuColor, KeyColor)
  79.     CALL CALCATTR(HotKeyColor, BarColor, RevKeyColor)
  80.     CALL CALCATTR(Inactive, MenuColor, Inact)
  81.     
  82.     NumberOfTitles = UBOUND(PullDown)
  83.     REDIM header$(1)
  84. '.......................................................................
  85.     
  86.     
  87. '......PRINT MAIN MENU BAR......................................
  88. '                                                                    PBINDEX
  89.     REDIM mbar(1 TO NumberOfTitles) AS ColorBarPos
  90. recol:    CALL XQPRINT(SPACE$(80), 1, 1, mencol, 0, 0)
  91.     
  92.     FOR i = 1 TO NumberOfTitles
  93.       CALL XQPRINT(PullDown(i).titles, 1, PullDown(i).position, mencol, 0, 0)
  94.       mbar(i).ULR = 1: mbar(i).ulc = PullDown(i).position - 1
  95. mbar(i).LRR = 1:
  96.       mbar(i).lrc = LEN(LTRIM$(RTRIM$(PullDown(i).titles))) + mbar(i).ulc + 1
  97.     NEXT i
  98. IF asccode = 27 THEN EXIT SUB
  99. IF choice$ <> "" THEN EXIT SUB
  100. IF click = 0 THEN EXIT SUB
  101. '.......................................................................
  102.  
  103. '.......HIGHLIGHT HOT KEYS.............................................
  104. 'CALL ParseDelimited(pulldown(Element).HotKey, "/", header$(), count, 3)
  105.     FOR i = 1 TO NumberOfTitles
  106.       highlight = mbar(i).ulc + VAL(MID$(PullDown(i).HotKey, 1, 1))
  107.       CALL RECOLORAREA(1, highlight, 1, highlight, KeyColor, 0, -1)
  108.     NEXT i
  109.     CALL RECOLORAREA(mbar(1).ULR, mbar(1).ulc, mbar(1).LRR, mbar(1).lrc, bar, 0, 0)
  110.     highlight = mbar(1).ulc + VAL(MID$(PullDown(1).HotKey, 1, 1))
  111.     CALL RECOLORAREA(1, highlight, 1, highlight, RevKeyColor, 0, -1)
  112. '...................................................................
  113.     
  114. '..............GET INPUT// CHECK FOR HOT KEY PRESS..................
  115.     Element = 1
  116.     IF click > 0 THEN
  117.        CALL MMCURSOROFF
  118.        lft = 1
  119.        GOTO clk
  120.     END IF
  121.     DO
  122.       CALL MMCURSORON
  123.       CALL Getkey(mouse, asccode, scancode, lft, rgt)
  124.       aa$ = UCASE$(CHR$(asccode))
  125.       asccode = ASC(aa$)
  126.       CALL MMCURSOROFF
  127.       IF rgt > 0 THEN asccode = 27
  128.       IF asccode = 27 THEN GOTO recol
  129.      
  130. clk:    'IF click > 0 THEN CALL MMCURSORON
  131.         IF lft > 0 THEN
  132.         CALL MMCLICK(lft, rgt)
  133.         CALL LCLICKLOC(mrow, mcol)
  134.         IF mrow = 1 THEN
  135.           FOR i = 1 TO NumberOfTitles
  136.             range = LEN(LTRIM$(RTRIM$(PullDown(i).titles)))
  137.             IF mcol >= PullDown(i).position AND mcol < PullDown(i).position + range THEN
  138.                   OldElement = Element
  139.                   highlight = mbar(Element).ulc + VAL(MID$(PullDown(Element).HotKey, 1, 1))
  140.                   CALL RECOLORAREA(mbar(OldElement).ULR, mbar(OldElement).ulc, mbar(OldElement).LRR, mbar(OldElement).lrc, mencol, 0, 0)
  141.                   CALL RECOLORAREA(1, highlight, 1, highlight, KeyColor, 0, -1)
  142.               scancode = 80
  143.               Element = i
  144.         CALL RECOLORAREA(mbar(Element).ULR, mbar(Element).ulc, mbar(Element).LRR, mbar(Element).lrc, bar, 0, 0)
  145.         highlight = mbar(Element).ulc + VAL(MID$(PullDown(Element).HotKey, 1, 1))
  146.         CALL RECOLORAREA(1, highlight, 1, highlight, RevKeyColor, 0, -1)
  147.               EXIT FOR
  148.             END IF
  149.           NEXT i
  150.              ELSE asccode = 27
  151.              GOTO recol
  152.         END IF
  153.       END IF
  154.       
  155. '......HOT KEY PRESS
  156.       IF lft = 0 THEN
  157.         FOR i = 1 TO NumberOfTitles
  158.           IF ASC(MID$(PullDown(i).HotKey, 2, 1)) = asccode THEN
  159.             OldElement = Element
  160.             highlight = mbar(Element).ulc + VAL(MID$(PullDown(Element).HotKey, 1, 1))
  161.             CALL RECOLORAREA(mbar(OldElement).ULR, mbar(OldElement).ulc, mbar(OldElement).LRR, mbar(OldElement).lrc, mencol, 0, 0)
  162.             CALL RECOLORAREA(1, highlight, 1, highlight, KeyColor, 0, -1)
  163.             Element = i
  164.             CALL RECOLORAREA(1, 1, 1, 80, mencol, 0, -1)
  165.             CALL RECOLORAREA(mbar(Element).ULR, mbar(Element).ulc, mbar(Element).LRR, mbar(Element).lrc, bar, 0, 0)
  166.             scancode = 80
  167.             EXIT FOR
  168.           END IF
  169.         NEXT i
  170.       END IF
  171. '.......................................................................
  172.       
  173.       
  174.       
  175.  click = 0
  176. '..............GET INPUT// CHECK FOR ARROW KEY OR ENTER KEY PRES..........
  177.       SELECT CASE scancode
  178.       CASE IS = 77
  179.         OldElement = Element
  180.         highlight = mbar(Element).ulc + VAL(MID$(PullDown(Element).HotKey, 1, 1))
  181.         CALL RECOLORAREA(mbar(OldElement).ULR, mbar(OldElement).ulc, mbar(OldElement).LRR, mbar(OldElement).lrc, mencol, 0, 0)
  182.         CALL RECOLORAREA(1, highlight, 1, highlight, KeyColor, 0, -1)
  183.         Element = Element + 1
  184.         IF Element > NumberOfTitles THEN Element = 1
  185.         CALL RECOLORAREA(mbar(Element).ULR, mbar(Element).ulc, mbar(Element).LRR, mbar(Element).lrc, bar, 0, 0)
  186.         highlight = mbar(Element).ulc + VAL(MID$(PullDown(Element).HotKey, 1, 1))
  187.         CALL RECOLORAREA(1, highlight, 1, highlight, RevKeyColor, 0, -1)
  188.       CASE IS = 75
  189.         OldElement = Element
  190.         highlight = mbar(Element).ulc + VAL(MID$(PullDown(Element).HotKey, 1, 1))
  191.         CALL RECOLORAREA(mbar(OldElement).ULR, mbar(OldElement).ulc, mbar(OldElement).LRR, mbar(OldElement).lrc, mencol, 0, 0)
  192.         CALL RECOLORAREA(1, highlight, 1, highlight, KeyColor, 0, -1)
  193.         Element = Element - 1
  194.         IF Element < 1 THEN Element = NumberOfTitles
  195.         CALL RECOLORAREA(mbar(Element).ULR, mbar(Element).ulc, mbar(Element).LRR, mbar(Element).lrc, bar, 0, 0)
  196.         highlight = mbar(Element).ulc + VAL(MID$(PullDown(Element).HotKey, 1, 1))
  197.         CALL RECOLORAREA(1, highlight, 1, highlight, RevKeyColor, 0, -1)
  198.       CASE IS = 80, 28, 224
  199.         'CALL RECOLORAREA(1, 1, 1, 80, mencol, 0, -1)
  200. 'STOP
  201.         CALL ShowMenu(Element, PullDown(), NumberOfTitles, bar, mencol, frame, framecolor, Inact, KeyColor, RevKeyColor, mbar(), choice$)
  202.         IF choice$ = "" THEN asccode = 27
  203.         CALL MMCURSOROFF
  204.         GOTO recol
  205.         
  206.       END SELECT
  207. '.........................................................................
  208.       
  209.       
  210.       
  211.       
  212.     LOOP
  213.     
  214.     
  215.     
  216.     
  217. 'SLEEP 4
  218.     CLS
  219.     
  220.   END SUB
  221.  
  222. SUB ShowMenu (Element, PullDown() AS MenuItems, NumberOfTitles, bar, mencol, frame, framecolor, Inact, KeyColor, RevKeyColor, mbar() AS ColorBarPos, choice$)
  223.  
  224. '..........break down items into Picks$ for easy access
  225. redo:    REDIM picks$(1)
  226.     REDIM Attributes$(1)
  227.     CALL ParseDelimited(PullDown(Element).items, "/", picks$(), count, 3)
  228.     CALL ParseDelimited(PullDown(Element).HotKey, "/", Attributes$(), AttrCount, 3)
  229.     
  230. '.................................................................. PBINDEX
  231.     
  232. '...............set positions for verticle color bar.............PBINDEX
  233. '....AND CALCIULATE AND SHOW MENU WINDOW. SAVE SCREEN UNDER WINDOW
  234.     
  235.     REDIM Vbar(1 TO count) AS ColorBarPos
  236.     ULR = 3
  237.     ulc = PullDown(Element).position - 1
  238.     LRR = 2 + count
  239.     lrc = largest(picks$(), count) + 2 + ulc
  240.     CALL UNCALCATTR(fore, back, mencol)
  241.     grow = 0
  242.     shadow = -3
  243.     SCRMODE = -1
  244.     PAGE = 0
  245.     CALL CALCSIZE(ULR - 1, ulc - 1, LRR + 2, lrc + 3, scrsize)
  246.     REDIM holdback(scrsize)
  247.     DSEG = VARSEG(holdback(1))
  248.     DOFS = VARPTR(holdback(1))
  249.     CALL DGETSCREEN(DSEG, DOFS, ULR - 1, ulc - 1, LRR + 2, lrc + 3, 0, -1)
  250.     CALL WindowManager(ULR, ulc, LRR, lrc, frame, fore, back, grow, shadow, label, label$, PAGE, SCRMODE)
  251. '............................................................PBINDEX
  252.     
  253. '................PRINT MENU ITEMS...........................................
  254.     top = ULR
  255.     bulc = ulc + 1
  256.     blrc = lrc - 1
  257.     FOR i = 1 TO count
  258.       IF VAL(MID$(Attributes$(i + 1), 3, 1)) THEN swcolor = mencol ELSE swcolor = Inact
  259.       CALL XQPRINT(picks$(i), top - 1 + i, bulc, swcolor, 0, -1)
  260.       IF swcolor <> Inact THEN
  261.         highlight = ulc + VAL(MID$(Attributes$(i + 1), 1, 1))
  262.         CALL RECOLORAREA(top - 1 + i, highlight, top - 1 + i, highlight, KeyColor, 0, -1)
  263.       END IF
  264.     NEXT i
  265.     slide = top
  266.     CALL RECOLORAREA(slide, bulc - 1, slide, blrc, bar, 0, -1)
  267.     i = 1
  268.     IF swcolor <> Inact THEN
  269.       highlight = bulc + VAL(MID$(Attributes$(i + 1), 2, 1))
  270.       CALL RECOLORAREA(top - 1 + i, highlight, top - 1 + i, highlight, RevKeyColor, 0, -1)
  271.     END IF
  272. '........................................................................
  273.     
  274.    
  275.     DO
  276.       llft = 0
  277.       CALL MMCURSORON
  278.       CALL Getkey(mouse, asccode, scancode, lft, rgt)
  279.       aa$ = UCASE$(CHR$(asccode))
  280.       asccode = ASC(aa$)
  281.  
  282.       CALL MMCURSOROFF
  283.      IF lft > 0 THEN
  284.         llft = lft
  285.         CALL MMCLICK(lft, rgt)
  286.         CALL LCLICKLOC(mrow, mcol)
  287.         IF mrow > 2 AND mrow < count + 3 THEN
  288.            IF mcol > ulc AND mcol < lrc THEN
  289.              place = mrow - 2
  290.              IF VAL(MID$(Attributes$(place + 1), 3, 1)) > 0 THEN
  291.               choice$ = picks$(place)
  292.               CALL DPUTSCREEN(DSEG, DOFS, ULR - 1, ulc - 1, LRR + 2, lrc + 3, PAGE, SCRMODE)
  293.               EXIT SUB
  294.                 ELSE
  295.                     BEEP
  296.                     'llft = 0
  297.               END IF
  298.              ELSE rgt = 1
  299.            END IF
  300.              ELSE rgt = 1
  301.         END IF
  302.       END IF
  303.  
  304.       
  305.       
  306.        IF llft > 0 AND mrow = 1 THEN
  307.           rgt = 0
  308.           FOR i = 1 TO NumberOfTitles
  309.             range = LEN(LTRIM$(RTRIM$(PullDown(i).titles)))
  310.             IF mcol >= PullDown(i).position AND mcol < PullDown(i).position + range THEN
  311.                   OldElement = Element
  312.                   highlight = mbar(Element).ulc + VAL(MID$(PullDown(Element).HotKey, 1, 1))
  313.                   CALL RECOLORAREA(mbar(OldElement).ULR, mbar(OldElement).ulc, mbar(OldElement).LRR, mbar(OldElement).lrc, mencol, 0, 0)
  314.                   CALL RECOLORAREA(1, highlight, 1, highlight, KeyColor, 0, -1)
  315.               scancode = 77
  316.               Element = i
  317.         CALL RECOLORAREA(mbar(Element).ULR, mbar(Element).ulc, mbar(Element).LRR, mbar(Element).lrc, bar, 0, 0)
  318.         highlight = mbar(Element).ulc + VAL(MID$(PullDown(Element).HotKey, 1, 1))
  319.         CALL RECOLORAREA(1, highlight, 1, highlight, RevKeyColor, 0, -1)
  320.               Element = i - 1
  321.               IF Element < 1 THEN Element = NumberOfTitles
  322.               EXIT FOR
  323.             END IF
  324.           NEXT i
  325.  
  326.        END IF
  327.  
  328.  
  329.  
  330.       IF rgt > 0 THEN scancode = 1
  331.       IF scancode = 1 THEN
  332.          CALL DPUTSCREEN(DSEG, DOFS, ULR - 1, ulc - 1, LRR + 2, lrc + 3, PAGE, SCRMODE)
  333.          EXIT SUB
  334.       END IF
  335.  
  336.  
  337.  
  338.  
  339.  
  340.  
  341. '......HOT KEY PRESS
  342.       IF lft = 0 THEN
  343.         FOR i = 2 TO AttrCount
  344.           IF ASC(MID$(Attributes$(i), 2, 1)) = asccode THEN
  345.             IF VAL(MID$(Attributes$(i), 3, 1)) > 0 THEN
  346.             choice$ = picks$(i - 1)
  347.             CALL DPUTSCREEN(DSEG, DOFS, ULR - 1, ulc - 1, LRR + 2, lrc + 3, PAGE, SCRMODE)
  348.             EXIT SUB
  349.              'ELSE BEEP
  350.            END IF
  351.           END IF
  352.         NEXT i
  353.       END IF
  354. '.......................................................................
  355.      
  356.      
  357.      
  358.      
  359.       SELECT CASE scancode
  360.       CASE IS = 77
  361.         OldElement = Element
  362.         highlight = mbar(Element).ulc + VAL(MID$(PullDown(Element).HotKey, 1, 1))
  363.         CALL RECOLORAREA(mbar(OldElement).ULR, mbar(OldElement).ulc, mbar(OldElement).LRR, mbar(OldElement).lrc, mencol, 0, 0)
  364.         CALL RECOLORAREA(1, highlight, 1, highlight, KeyColor, 0, -1)
  365.      Element = Element + 1
  366.       IF Element > NumberOfTitles THEN Element = 1
  367.         CALL RECOLORAREA(mbar(Element).ULR, mbar(Element).ulc, mbar(Element).LRR, mbar(Element).lrc, bar, 0, 0)
  368.         highlight = mbar(Element).ulc + VAL(MID$(PullDown(Element).HotKey, 1, 1))
  369.         CALL RECOLORAREA(1, highlight, 1, highlight, RevKeyColor, 0, -1)
  370.         CALL DPUTSCREEN(DSEG, DOFS, ULR - 1, ulc - 1, LRR + 2, lrc + 3, PAGE, SCRMODE)
  371.       GOTO redo
  372.       
  373.       CASE IS = 75
  374.         OldElement = Element
  375.         highlight = mbar(Element).ulc + VAL(MID$(PullDown(Element).HotKey, 1, 1))
  376.         CALL RECOLORAREA(mbar(OldElement).ULR, mbar(OldElement).ulc, mbar(OldElement).LRR, mbar(OldElement).lrc, mencol, 0, 0)
  377.         CALL RECOLORAREA(1, highlight, 1, highlight, KeyColor, 0, -1)
  378.         Element = Element - 1
  379.         IF Element < 1 THEN Element = NumberOfTitles
  380.         CALL RECOLORAREA(mbar(Element).ULR, mbar(Element).ulc, mbar(Element).LRR, mbar(Element).lrc, bar, 0, 0)
  381.         highlight = mbar(Element).ulc + VAL(MID$(PullDown(Element).HotKey, 1, 1))
  382.         CALL RECOLORAREA(1, highlight, 1, highlight, RevKeyColor, 0, -1)
  383.         CALL DPUTSCREEN(DSEG, DOFS, ULR - 1, ulc - 1, LRR + 2, lrc + 3, PAGE, SCRMODE)
  384.         GOTO redo
  385.  
  386.       CASE IS = 80
  387.         OldElement = slide
  388.         IF VAL(MID$(Attributes$(OldElement - 1), 3, 1)) THEN
  389.           CALL RECOLORAREA(OldElement, bulc - 1, OldElement, blrc, mencol, 0, -1)
  390.           highlight = bulc + VAL(MID$(Attributes$(OldElement - 1), 2, 1))
  391.           CALL RECOLORAREA(top - 3 + OldElement, highlight, top - 3 + OldElement, highlight, KeyColor, 0, -1)
  392.         ELSE
  393.           CALL RECOLORAREA(OldElement, bulc - 1, OldElement, blrc, Inact, 0, -1)
  394.         END IF
  395.         slide = slide + 1
  396.         IF slide > count + 2 THEN slide = top
  397.         CALL RECOLORAREA(slide, bulc - 1, slide, blrc, bar, 0, -1)
  398.         IF VAL(MID$(Attributes$(slide - 1), 3, 1)) THEN
  399.           highlight = bulc + VAL(MID$(Attributes$(OldElement - 1), 2, 1))
  400.           CALL RECOLORAREA(top - 3 + slide, highlight, top - 3 + slide, highlight, RevKeyColor, 0, -1)
  401.         END IF
  402.      
  403.      
  404.       CASE IS = 72
  405.         OldElement = slide
  406.         IF VAL(MID$(Attributes$(OldElement - 1), 3, 1)) THEN
  407.           CALL RECOLORAREA(OldElement, bulc - 1, OldElement, blrc, mencol, 0, -1)
  408.           highlight = bulc + VAL(MID$(Attributes$(OldElement - 1), 2, 1))
  409.           CALL RECOLORAREA(top - 3 + OldElement, highlight, top - 3 + OldElement, highlight, KeyColor, 0, -1)
  410.         ELSE
  411.           CALL RECOLORAREA(OldElement, bulc - 1, OldElement, blrc, Inact, 0, -1)
  412.         END IF
  413.        
  414.         slide = slide - 1
  415.         IF slide < top THEN slide = count + 2
  416.         CALL RECOLORAREA(slide, bulc - 1, slide, blrc, bar, 0, -1)
  417.         IF VAL(MID$(Attributes$(slide - 1), 3, 1)) THEN
  418.           highlight = bulc + VAL(MID$(Attributes$(OldElement - 1), 2, 1))
  419.           CALL RECOLORAREA(top - 3 + slide, highlight, top - 3 + slide, highlight, RevKeyColor, 0, -1)
  420.         END IF
  421.         
  422.          CASE IS = 28, 224
  423. 'pbindex
  424.           IF VAL(MID$(Attributes$(slide - 1), 3, 1)) > 0 THEN
  425.           choice$ = picks$(slide - 2)
  426.           CALL DPUTSCREEN(DSEG, DOFS, ULR - 1, ulc - 1, LRR + 2, lrc + 3, PAGE, SCRMODE)
  427.           EXIT SUB
  428.             ELSE BEEP
  429.           END IF
  430.      
  431.       END SELECT
  432.       CALL MMCURSORON
  433.       
  434.     LOOP
  435.     
  436. 'CALL RECOLORAREA(Mbar(1).ulr, Mbar(1).ulc, Mbar(1).lrr, Mbar(1).lrc, bar, 0, 0)
  437.     
  438.     
  439.     
  440.     
  441.     
  442.     
  443.     
  444.     
  445.     
  446.     
  447.     
  448.     
  449.     
  450. 'CALL XQPRINT(pulldown(i).titles, 1, pulldown(i).position, mencol, 0, 0)
  451. 'Mbar(i).ulr = 1: Mbar(i).ulc = pulldown(i).position - 1
  452. 'Mbar(i).lrr = 1:
  453. 'Mbar(i).lrc = LEN(LTRIM$(RTRIM$(pulldown(i).titles))) + Mbar(i).ulc + 1
  454.     
  455. 'NEXT i
  456. 'CALL RECOLORAREA(Mbar(1).ulr, Mbar(1).ulc, Mbar(1).lrr, Mbar(1).lrc, bar, 0, 0)
  457.     
  458.     
  459.     
  460.     
  461.     
  462.     
  463.   END SUB
  464.  
  465.